The present invention relates to a barcode reader, more particularly to a barcode reader decoding system which software-processes barcode-related data received from first-in first-out (FIFO) memory in use of the Delta Distance Method and then correctly transmits the software-processed barcode-related data to a host computer through serial transmission interface.
FIG. 1 shows a block diagram of a conventional barcode reader decoding system comprising:
a slot scanner 1 which converts an optical signal scattered from a barcode to a digital signal, a barcode interval counter controller 2 which counts in binary the number of intervals of the digital signal of the slot scanner 1, a FIFO memory 3 which stores the barcode digital signal of the barcode interval counter controller 2 and also sends out the stored data in synchronization with clock pulse of pulse generator 4, a decoder 5 which decodes data from the FIFO memory 3, a frame controller 6 which separates normal data of the barcode from data of the decoder 5, a microprocessor 7 which checks and processes data of the barcode from the frame controller 6 and controls the slot scanner 1 through scan controller 8 in order to determine whether the barcode is on a position read by the slot scanner 1, and an interface adapter 9 which interfaces to a host computer 10 the normal barcode generated from the microprocessor 7.
The operation of a conventional barcode reader decoding system having the above configuration will be described below.
The slot scanner 1 converts to an electrical signal an optical signal scattered from a barcode by means of a control signal of the scan controller 8 which is controlled by the microprocessor 7, generates a digital pulse of a space/bar transistion signal STV indicating changes from a space to a bar or of a bar/space transistion signal RTV indicating changes from a bar to a space, and applies the digital pulse to the barcode interval counter controller 2.
At this time, the barcode interval counter controller 2 counts in binary the respective time intervals of the space/bar transistion signal STV and the bar/space transistion signal RTV and stores the counting results in the FIFO memory 3.
That is, the barcode interval counter controller 2 is disabled with the signals STR, RTV of the slot scanner 1, time interval count signals of the space/bar transistion signal STV and the bar/space transition signal RTV are applied to the FIFO memory 3 together with a signal VID indicating "1" on a bar and "0" on an interval.
At this time, the barcode interval counter controller 2 is reset and a next bar signal is counted. The data stored in the FIFO memory 3 is sent out to the decoder 5 in synchronization with clock pulse of pulse generator 4 while 11-bit binary data indicating an entire barcode width, signal VID indicating whether an interval is a bar or a space, and clock pulse CLK are applied to the decoder 5.
Hence, the decoder 5 produces a BCD bit indicating a decimal character according to the data from the FIFO memory 3, and a 4-bit BCD code indicating left margin, right margin, center band, error and the like. That is, a mark signal MARK indicating whether a barcode interval means a bar or a space, an equal signal EQUAL indicating if the present barcode interval together with three prior intervals are equal to present interval, and a parity signal PARITY which indicates whether the barcode is an odd parity or an even parity are applied to the frame controller 6.
The frame controller 6 separates proper data or improper data as a barcode from signals of the decoder 5 by means of a read signal RD and a write signal WR coming from the microprocessor 7 and applies separated data to the microprocessor 7.
The microprocessor 7 adjusts the slot scanner 1 through the scan controller 8 in order to determine if the barcode comes to a position read by the slot scanner 1, checks the frame controller 6 when signals of the adjusted slot scanner 1 is applied to the microprocessor 7 through the frame controller 6, performs a correlation analysis and a Module-Ten-Check in order to determine if the barcode data is proper when the separated barcode data is applied to the microprocessor 7, and transmits a proper barcode to the host computer 10 through an interface adapter 9.
However, since such a prior art barcode-reading decode system directly counts spaces and bars by using a space/bar transistion signal STV and a bar/space transistuon signal RTV of a slot scanner it has drawbacks in that a poor reliability occurs in reading an ink-spread barcode caused when printing a barcode, circuit structure is inevitably complicated due to an intricate decoder construction, and error occurs in case of scanning barcodes at a high speed.